//////////////////////////////////////////////////////////////////////////////////
//	Copyright 2011 by Yosef Grabivker, ryuho@homenetworksoft.com
//
//   Licensed under the Apache License, Version 2.0 (the "License");
//   you may not use this file except in compliance with the License.
//   You may obtain a copy of the License at
//
//     http://www.apache.org/licenses/LICENSE-2.0
//
//   Unless required by applicable law or agreed to in writing, software
//   distributed under the License is distributed on an "AS IS" BASIS,
//   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
//   See the License for the specific language governing permissions and
//   limitations under the License.
//////////////////////////////////////////////////////////////////////////////////

#ifndef STATUSPANEL_H_
#define STATUSPANEL_H_

class CStatusPanel: public wxPanel, public IGUIBind
{
public:
							CStatusPanel(wxWindow* parent, wxWindowID id, const wxString& label, const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize);
	virtual 				~CStatusPanel();
	IGUIBind*				GetBind() 	{ return 	this; }
	
	//IGUIBind
	virtual void			SetMaxVal(unsigned int nVal);
	virtual unsigned int	GetMaxVal();
	virtual void			SetVal(unsigned int nVal);
	virtual void 			SetWarningLevel(unsigned char btVal);
	virtual void 			SetAlarmLevel(unsigned char btVal);
	virtual void 			SetVal(const wxString& str)	{}
	
protected:

	DECLARE_EVENT_TABLE()
private:
	class CStatusCtrl*		m_pStatusCtrl;
	class CGraphCtrl*		m_pGraph;
};

#endif /*STATUSPANEL_H_*/
